import request from '@/utils/request'

// 获取说说列表
export function getMoments(params) {
  return request({
    url: '/api/moment/list',
    method: 'get',
    params
  })
}

// 获取我的说说列表
export function getMyMoments(params) {
  return request({
    url: '/api/moment/my',
    method: 'get',
    params
  })
}

// 添加说说
export function addMoment(data) {
  return request({
    url: '/api/moment/add',
    method: 'post',
    data
  })
}

// 更新说说
export function updateMoment(data) {
  return request({
    url: '/api/moment/update',
    method: 'put',
    data
  })
}

// 删除说说
export function deleteMoment(id) {
  return request({
    url: `/api/moment/delete/${id}`,
    method: 'delete'
  })
}

// 点赞/取消点赞说说
export function toggleMomentLike(momentId) {
  return request({
    url: `/api/moment/like/${momentId}`,
    method: 'post'
  })
}

// 获取说说点赞数
export function getMomentLikeCount(momentId) {
  return request({
    url: `/api/moment/like/count/${momentId}`,
    method: 'get'
  })
}

// 获取说说评论数
export function getMomentCommentCount(momentId) {
  return request({
    url: `/api/moment/comment/count/${momentId}`,
    method: 'get'
  })
}

// 检查用户是否已点赞说说
export function checkMomentLikeStatus(momentId) {
  return request({
    url: `/api/moment/like/status/${momentId}`,
    method: 'get'
  })
}

// 发表评论
export function addComment(data) {
  return request({
    url: '/api/moment/comment',
    method: 'post',
    data
  })
}

// 回复评论
export function replyComment(data) {
  return request({
    url: '/api/moment/comment/reply',
    method: 'post',
    data
  })
}

// 获取说说评论列表
export function getMomentComments(momentId, page, size) {
  return request({
    url: `/api/moment/comment/list/${momentId}`,
    method: 'get',
    params: { page, size }
  })
}

// 删除评论
export function deleteComment(commentId) {
  return request({
    url: `/api/moment/comment/delete/${commentId}`,
    method: 'delete'
  })
}

// 点赞/取消点赞评论
export function toggleCommentLike(commentId) {
  return request({
    url: `/api/moment/comment/like/${commentId}`,
    method: 'post'
  })
}

// 检查用户是否已点赞评论
export function checkCommentLikeStatus(commentId) {
  return request({
    url: `/api/moment/comment/like/status/${commentId}`,
    method: 'get'
  })
}

// 获取说说详情
export function getMomentDetail(momentId, page, size) {
  return request({
    url: `/api/moment/detail/${momentId}`,
    method: 'get',
    params: { page, size }
  })
}